1. Field of the Invention
The present invention relates to a font processing apparatus for outputting characters with proper fonts through a communication network in a network environment, where a plurality of information processing units are connected to the network, and a method thereof.
2. Description of the Related Art
In recent years, Internet services using WWW (World Wide Webs) have rapidly become more common. Companies, end users, and so forth have participated a wide variety of services such as information publications, commodity presentations, and commodity sales in a worldwide network environment. The WWWs represent Internet resources of information that server computers connected to the Internet provide. In the WWWs, a software tool termed a web browser is installed on a client computer that requests services to servers. The web browser communicates with the servers.
It is said that around 80% of companies, in the United States, have constructed local systems using the Internet services (namely, internal webs). An internal web is a kind of system that prohibits unauthorized users using a firewall or the like. Such a network is also referred to as an Intranet.
A large number of companies have entered the Internet businesses. Such companies establish their home pages on the Internet so as to provide a variety of services such as product presentations, sales, and maintenance services.
In addition, many companies are developing encrypting technologies for electronic commerce (EC). It is supposed that when such technologies are established, the number of business transactions using the Internet will be increased.
Further, the development methods of the application programs that run on the Internet have changed. Many innovations in development methods and providing methods thereof have resulted from the advent of new development languages such as Java.
Java is an interpreter, a network-based programming language. A program written in Java can be executed under any operating system (OS). A program written in Java is provided in the following manner.
The server side has programs that run on the client side as applets. An applet is a client program that is coded in Java. The applet is provided from a network server (downloaded therefrom) and executed on the client side. This program is downloaded to the memory of the computer of the client. However, the applet is overwritten with another program after it is executed. Thus, applets are referred to as disposable software.
A Java-oriented browser on the client side downloads a required object (data or contents) and an applet for processing the object and executes the applet. A Java-oriented browser is a browser that can download an applet developed in Java and execute it. An example of Java-oriented browser is called Hot Java.
A major feature of this method is in that network servers prepare information (data) of inventory, price, and so forth necessary for transactions, and programs necessary for sales contracts, and they can control operations of the programs from the server side. It is considered that such a new providing method is an ideal environment for transactions (business) with end users connected to the Internet.
Thus, the end users can connect their terminals to any sales services on the Internet without the need to construct special environments. In other words, when an end user connects his or her terminal to a particular service, he or she does not need to purchase a new software tool and install it on his/her terminal or add a new unit thereto.
Such a providing method is going to affect computer hardware. The terminal of each end user only requires a browser that accesses the network and a minimum OS that operates the browser. Other programs that each end user wants can be downloaded from the servers on the network. Thus, the memory, programs stored on the hard disc, and peripheral units necessary for the terminal can be minimized. As examples of such a terminal, so-called $500 terminals and portable terminals called PDAs (Personal Digital Assistants) are known.
Such a network environment can be treated as a system environment, where the whole network can be regarded as one OS and software tools that run on client terminals are provided by servers on the network.
So far, various Japanese language processing software products that run on main frame computers, UNIX systems, personal computers, and so forth have been developed. They include software tools that perform font related processes and user defined character (external character) processes. In these systems, each system has an independent environment called an OS. A Japanese language processing software tool is installed in the OS.
FIG. 1A is a schematic diagram showing a conventional Japanese language processing system accomplished on a personal computer. In the system shown in FIG. 1A, various software products 1 are conventional software products that output media data such as characters, images, charts, and so forth. The various software products 1, for example, include business application programs that are used by companies for selling products.
Character information included in the various media that are output are, for example, font names, codes of character strings, character sizes, and character pitches. When necessary, a media data file may be created for output.
A terminal accessing driver 3 is a program that causes a terminal display 5 of the personal computer to display various media data. The terminal accessing driver 3 includes a font driver 4. The font driver 4 obtains a relevant font from a font file and displays it on the terminal display 5.
There are regular fonts in the system, such as a Mincho-tai font 6, a Gothic font 7, and a Mohitsu-tai font 8. In addition, other fonts can be optionally added.
However, such a Japanese language process is performed closedly in a single system such as a personal computer. Thus, required fonts should be added by the end user.
FIG. 1B is a schematic diagram showing a flow of processes performed between a server that is an information provider and a client that is a user terminal, in the case that the client receives various information services on the current WWW. The processes are performed in the following manner.
(a) Using a URL (Uniform Resource Locator), the user designates the location of a desired information service (home page) on a web browser 17 displayed on a display unit 23 of a WWW client 16. A URL is identification information that represents resources on the network in a uniform mannner.
(b) The web browser 17 obtains an IP (Internet Protocol) address corresponding to the designated URL, connects the WWW client 16 to the relevant machine (WWW server) 11 on the network corresponding to the IP address, and downloads data of the "WWW server" home page to the WWW client 16.
The data of the home page has the format of an HTML document written in HTML (Hyper Text Markup Language). An HTML document is a kind of hyper text that contains links to other files. In this example, this data corresponds to document media 13.
In the WWW server 11, media to be provided 12 include documents, images, and sounds. The media 12 are categorized as three files that are the document media 13, image media 14, and sound media 15. The image media 14 and the sound media 15 are linked to the document media 13. In the HTML document, locations of various media data that are output along with a document have been defined by the links.
(c) The web browser 17 analyzes the document media 13 and obtains URLs of image media data and sound media data linked thereto.
(d) The web browser 17 obtains the IP address corresponding to the URLs of each media data, connects the WWW client 16 to the relevant machine on the network, and downloads the media data 14 and 15 to the WWW client 16.
(e) The web browser 17 displays and outputs the downloaded media data 14 and 15 to the display unit 23 along with the document media 13. Normally, outputting programs corresponding to individual media are provided. A document outputting program 20 causes a character string in the document media 13 to be displayed using a font that is extracted from a font file 18 by a font reading program 19. The font reading program 19 corresponds to the font driver 4 shown in FIG. 1A. An image outputting program 21 displays data of the image media 14. A sound outputting program 22 outputs data of the sound media 15.
The conventional information processing systems perform one of the following font related processes.
(1) A system determines font resources required to print character media and supplies to a printer fonts that the printer does not have.
(2) Font resources for outputting character media are downloaded from a host computer or a server to a client beforehand. The client outputs character strings using the fonts.
(3) When a client requires a particular font, it requests that font to a host computer or a server.
However, in the method (1), the system should check the fonts that the printer has. In the method (2), all required fonts are not always downloaded. In the method (3), the client terminal should have a dedicated software tool for requesting a font.
In the Internet environment such as a WWW, since the entire network is treated as one OS, the Japanese language process that includes the font related process and the user defined character handling process should be performed in a new method.
For example, when a company provides services through home pages, various kinds of fonts (styles of type) will be used to create sophisticated screen displays. However, it is difficult for the terminal of each end user to have all the required fonts. Thus, a system that supplies such fonts to each user terminal and allows them to be displayed on the display unit thereof is required.
In addition, any UNIX systems and personal computers that run on Japanese OSs can handle JIS (Japanese Industrial Standard) class 1 characters and JIS class 2 characters. When a user terminal handles addresses and names of customers in Japanese, since the JIS class 1 characters and JIS class 2 characters are not sufficient to express them, a system that can handle user defined characters as external characters should be used.
However, the external characters are defined by individual users. Thus, the external characters vary user by user. Consequently, external characters that one particular server has may not be displayed on other user terminals. On the Internet, a system that allows character strings including external characters to be displayed on each user terminal is desired.